package com.firewolf.oa.base;

import java.util.List;

/**
 * 基础DAO，提供基本的增删改查
 * @author liuxing
 *
 * @param <T>
 */
public interface BaseDao<T> {
	
	/**
	 * 保存实体
	 * @param t
	 */
	public void save(T t);
	
	/**
	 * 删除实体
	 * @param id
	 */
	public void delete(Long id);
	
	/**
	 * 修改实体类
	 * @param t
	 */
	public void update(T t);
	
	/**
	 * 根据ID查询实体类
	 * @param id
	 * @return
	 */
	public T findById(Long id);
	
	/**
	 * 根据一组ID返回一组实体类
	 * @param ids
	 * @return
	 */
	List<T> getByIds(Long[] ids);

	/**
	 * 查询所有
	 * 
	 * @return
	 */
	List<T> findAll();
	
}
